/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package CommandCadastrar;

import Cliente.Controller.CadastroPresenter;
import Cliente.Entidade.Cliente;
import Cliente.Model.CadastrarPaciente;
import Cliente.Model.PesquisarPaciente;
import Cliente.util.CalculaRCQ;
import Cliente.util.DesabilitaCampos;
import Cliente.util.OrganizarTexto;
import Cliente.util.SelecionarSexo;
import javax.swing.JOptionPane;

/**
 *
 * @author Caio
 */
public class CadastrarCommand extends AbstractCadastrarCommand {
    
    
    CadastroPresenter cadastro;
    
    private final DesabilitaCampos dc = new DesabilitaCampos();
    private final SelecionarSexo ss = new SelecionarSexo();
    private CalculaRCQ calcularcq;
    private final PesquisarPaciente consultarcliente = new PesquisarPaciente();
    private final Cliente cliente = new Cliente();
    private OrganizarTexto organiza;
    
    public CadastrarCommand(CadastroPresenter receptor){
        super(receptor);
        cadastro=receptor;
    }

    @Override
    public void execute() {
        incluiCliente();
    }
    
    
    public void incluiCliente() {
        if (consultarcliente.consultaCliente(cadastro.getView().getFtfCPF().getText())) {
            JOptionPane.showMessageDialog(cadastro.getView(), " O cliente já foi cadastrado!", "Erro", JOptionPane.ERROR_MESSAGE);
        } else {
            if (cadastro.getView().getTxtNome().getText().trim().equals("")) {
                JOptionPane.showMessageDialog(cadastro.getView(), "Informe o nome do cliente!", "Erro", JOptionPane.ERROR_MESSAGE);
                cadastro.getView().getTxtNome().requestFocus();
            } else {
                 CadastrarPaciente clienteBD = new CadastrarPaciente();
                if (clienteBD.incluiCliente(cadastro.setClienteStatus())) {
                    JOptionPane.showMessageDialog(cadastro.getView(), "Cliente cadastrado com sucesso!", "Confirmação", JOptionPane.INFORMATION_MESSAGE);
                    dc.desabilitaCampos(cadastro.getView().getTxtNome(),cadastro.getView().getTxtAltura(),cadastro.getView().getTxtCintura(),cadastro.getView().getTxtIdade(),cadastro.getView().getTxtPeso(), cadastro.getView().getTxtQuadril(), cadastro.getView().getRadioFeminino(), cadastro.getView().getRadioMasculino(),cadastro.getView().getFtfCPF());
                } else {
                    JOptionPane.showMessageDialog(cadastro.getView(), "Erro ao cadastrar o cliente!", "Erro", JOptionPane.ERROR_MESSAGE);
                }
            }
        }


    }

    
    
}
    
    

